home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 26.zip / BS1 part 26 / Aztec C v5.2a disk 4.adf / 204inc_h.lzh / dos / exall.h < prev    next >
C/C++ Source or Header  |  1991-03-14  |  2KB  |  71 lines

  1. #ifndef DOS_EXALL_H
  2. #define DOS_EXALL_H
  3. /*
  4. **
  5. **    $Filename: dos/exall.h $
  6. **    $Release: 2.04 $
  7. **    $Revision: 36.5 $
  8. **    $Date: 90/07/12 $
  9. **
  10. **    include file for ExAll() data structures
  11. **
  12. **    (C) Copyright 1989,1990 Commodore-Amiga, Inc.
  13. **        All Rights Reserved
  14. **
  15. */
  16.  
  17. #ifndef EXEC_TYPES_H
  18. #include "exec/types.h"
  19. #endif
  20.  
  21. #ifndef UTILITY_HOOKS_H
  22. #include "utility/hooks.h"
  23. #endif
  24.  
  25. /* values that can be passed for what data you want from ExAll() */
  26. /* each higher value includes those below it (numerically)     */
  27. /* you MUST chose one of these values */
  28. #define    ED_NAME        1
  29. #define    ED_TYPE        2
  30. #define ED_SIZE        3
  31. #define ED_PROTECTION    4
  32. #define ED_DATE        5
  33. #define ED_COMMENT    6
  34.  
  35. /*
  36.  *   Structure in which exall results are returned in.    Note that only the
  37.  *   fields asked for will exist!
  38.  */
  39.  
  40. struct ExAllData {
  41.     struct ExAllData *ed_Next;
  42.     UBYTE  *ed_Name;
  43.     LONG    ed_Type;
  44.     ULONG    ed_Size;
  45.     ULONG    ed_Prot;
  46.     ULONG    ed_Days;
  47.     ULONG    ed_Mins;
  48.     ULONG    ed_Ticks;
  49.     UBYTE  *ed_Comment;    /* strings will be after last used field */
  50. };
  51.  
  52. /*
  53.  *   Control structure passed to ExAll.  Unused fields MUST be initialized to
  54.  *   0, expecially eac_LastKey.
  55.  *
  56.  *   eac_MatchFunc is a hook (see utility.library documentation for usage)
  57.  *   It should return true if the entry is to returned, false if it is to be
  58.  *   ignored.
  59.  *
  60.  *   This structure MUST be allocated by AllocDosObject()!
  61.  */
  62.  
  63. struct ExAllControl {
  64.     ULONG    eac_Entries;     /* number of entries returned in buffer      */
  65.     ULONG    eac_LastKey;     /* Don't touch inbetween linked ExAll calls! */
  66.     UBYTE  *eac_MatchString; /* wildcard string for pattern match or NULL */
  67.     struct Hook *eac_MatchFunc; /* optional private wildcard function     */
  68. };
  69.  
  70. #endif /* DOS_EXALL_H */
  71.